﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Newtonsoft.Json;
using NPSoft.Ferrero.Framework.Model;

namespace NPSoft.Ferrero.DataBridge.Model
{
    /// <summary>
    /// HumanResource Model
    /// </summary>
    public class HumanResource : ModelBase
    {
        /// <summary>
        /// Employee Local ID 
        /// </summary>
        [JsonProperty("Employee Local ID")]
        public string EMP_ID { get; set; }

        /// <summary>
        /// Company code
        /// </summary>
        [JsonProperty("Company code")]
        public string COMPANY_CD { get; set; }

        /// <summary>
        /// Employee Group code
        /// </summary>
        [JsonProperty("Employee Group code")]
        public string EMPGRP_CD { get; set; }

        /// <summary>
        /// Employee Group Description
        /// </summary>
        [JsonProperty("Employee Group Description")]
        public string EMPGRP_DESC { get; set; }

        /// <summary>
        /// Personnel subarea Code by SAP
        /// </summary>
        [JsonProperty("Personnel subarea Code")]
        public string PER_SUBAREA_CD { get; set; }

        /// <summary>
        /// Personnel subarea Description by SAP
        /// </summary>
        [JsonProperty("Personnel subarea Description")]
        public string PER_SUBAREA_DESC { get; set; }

        /// <summary>
        /// Personnel subarea Description Chinese by SAP
        /// </summary>
        [JsonProperty("Personnel subarea Description (Chinese)")]
        public string PER_SUBAREA_DESC_CHI { get; set; }

        /// <summary>
        /// Department 
        /// </summary>
        [JsonProperty("Department")]
        public string DEP_CD { get; set; }

        /// <summary>
        /// Department Description
        /// </summary>
        [JsonProperty("Department Description")]
        public string DEP_DESC { get; set; }

        /// <summary>
        /// Position Code
        /// </summary>
        [JsonProperty("Position Code")]
        public string POS_CD { get; set; }

        /// <summary>
        /// Position Description
        /// </summary>
        [JsonProperty("Position Description")]
        public string POS_DESC { get; set; }

        /// <summary>
        /// English Title
        /// </summary>
        [JsonProperty("English Title")]
        public string ENG_TIL { get; set; }

        /// <summary>
        /// Chinese Title
        /// </summary>
        [JsonProperty("Chinese Title")]
        public string CHI_TIL { get; set; }

        /// <summary>
        /// Organizational Unit Code
        /// </summary>
        [JsonProperty("Organizational Unit Code")]
        public string ORG_UNIT_CD { get; set; }

        /// <summary>
        /// Organizational Unit Description
        /// </summary>
        [JsonProperty("Organizational Unit Description")]
        public string ORG_UNIT_DESC { get; set; }

        /// <summary>
        /// Local Cost Center Code
        /// </summary>
        [JsonProperty("Local Cost Center Code")]
        public string LOC_COS_CEN_CD { get; set; }

        /// <summary>
        /// Local Cost Center Description
        /// </summary>
        [JsonProperty("Local Cost Center Description")]
        public string LOC_COS_CEN_DESC { get; set; }

        /// <summary>
        /// Employee English Last Name
        /// </summary>
        [JsonProperty("Employee English Last Name")]
        public string EMP_ENG_LAS_NM { get; set; }

        /// <summary>
        /// Employee English First Name
        /// </summary>
        [JsonProperty("Employee English First Name")]
        public string EMP_ENG_FIR_NM { get; set; }

        /// <summary>
        /// Employee Chinese Last Name
        /// </summary>
        [JsonProperty("Employee Chinese Last Name")]
        public string EMP_CHI_LAS_NM { get; set; }

        /// <summary>
        /// Employee Chinese First Name
        /// </summary>
        [JsonProperty("Employee Chinese First Name")]
        public string EMP_CHI_FIR_NM { get; set; }

        /// <summary>
        /// Employee Pinyin Last Name
        /// </summary>
        [JsonProperty("Employee Pinyin Last Name")]
        public string EMP_PY_LAS_NM { get; set; }

        /// <summary>
        /// Employee Pinyin First Name
        /// </summary>
        [JsonProperty("Employee Pinyin First Name")]
        public string EMP_PY_FIR_NM { get; set; }
        
        /// <summary>
        /// Gender
        /// </summary>
        [JsonProperty("Gender")]
        public string GENDER { get; set; }

        /// <summary>
        /// Personal Mobile phone No
        /// </summary>
        [JsonProperty("Personal Mobile phone No")]
        public string PER_MOB_PHO_NO { get; set; }

        /// <summary>
        /// Employee’s Line Manager Company code
        /// </summary>
        [JsonProperty("Employee’s Line Manager Company Code")]
        public string EMP_LINE_MGR_COMPANY_CODE { get; set; }

        /// <summary>
        /// Employee’s Line Manager Local ID
        /// </summary>
        [JsonProperty("Employee’s Line Manager Local ID")]
        public string EMP_LINE_MGR_LOC_ID { get; set; }

        /// <summary>
        /// Employee’s Line Manager Local ID2
        /// </summary>
        [JsonProperty("Employee’s Line Manager Local ID2")]
        public string EMP_LINE_MGR_LOC_ID2 { get; set; }

        /// <summary>
        /// Employee’s Line Manager Local ID3
        /// </summary>
        [JsonProperty("Employee’s Line Manager Local ID3")]
        public string EMP_LINE_MGR_LOC_ID3 { get; set; }

        /// <summary>
        /// Employee’s Line Manager First Name
        /// </summary>
        [JsonProperty("Employee’s Line Manager First Name")]
        public string EMP_LINEMGR_FIR_NM { get; set; }

        /// <summary>
        /// Employee’s Line Manager Last Name
        /// </summary>
        [JsonProperty("Employee’s Line Manager Last Name")]
        public string EMP_LINEMGR_LAS_NM { get; set; }

        /// <summary>
        /// Employee’s Line Manger Position Code
        /// </summary>
        [JsonProperty("Employee’s Line Manger Position Code")]
        public string EMP_LINEMGR_POS_CD { get; set; }
        
        /// <summary>
        /// Employee’s Line Manger Position Description
        /// </summary>
        [JsonProperty("Employee’s Line Manger Position Description")]
        public string EMP_LINEMGR_POS_DESC { get; set; }

        /// <summary>
        /// Employee’s Line Manager User ID
        /// </summary>
        [JsonProperty("Employee’s Line Manager User ID")]
        public string EMP_LINEMGR_USERID { get; set; }

        /// <summary>
        /// Employee’s Line Manager email address
        /// </summary>
        [JsonProperty("Employee’s Line Manager email address")]
        public string EMP_LINEMGR_EMAILADDR { get; set; }

        /// <summary>
        /// Hiring date
        /// </summary>
        [JsonProperty("Hiring date")]
        public string HIRING_DATE { get; set; }

        /// <summary>
        /// Termination date
        /// </summary>
        [JsonProperty("Termination date")]
        public string TERMINATION_DATE { get; set; }
        
        /// <summary>
        /// User ID
        /// </summary>
        [JsonProperty("User ID")]
        public string USER_ID { get; set; }

        /// <summary>
        /// Corporate email address
        /// </summary>
        [JsonProperty("Corporate email address")]
        public string COR_EMAIL_ADDR { get; set; }

        /// <summary>
        /// Vendor Code
        /// </summary>
        [JsonProperty("Vendor Code")]
        public string VENDOR_CD { get; set; }

        /// <summary>
        /// Grade
        /// </summary>
        [JsonProperty("Group")]
        public string GRADE { get; set; }

        /// <summary>
        /// SAP/TSR/HQ3
        /// </summary>
        [JsonProperty("DateSource")]
        public string DATA_SOURCE { get; set; }

        /// <summary>
        /// Y/N
        /// </summary>
        [JsonProperty("Is Sales")]
        public string IS_SALES { get; set; }

        /// <summary>
        /// 
        /// </summary>
        [JsonProperty("HR_POSITION_DESC")]
        public string HR_POS_DESC { get; set; }
    }
}
